package ModuloFuncionario;


public class FachadaFuncionario implements InterfaceFachadaFuncionario {
	
	private ManipulaFuncionario funcionario;
	private String cpfLogado;
	//SingleTon
	
	private FachadaFuncionario(){
		instanciaManipulacaoFuncionario();
	}
	
	public static FachadaFuncionario getInstancia(){
		return FachadaSingle.instancia;
	}

	private static class FachadaSingle{
		private static FachadaFuncionario instancia = new FachadaFuncionario();
	}

	private void instanciaManipulacaoFuncionario(){
		funcionario = new ManipulaFuncionario();
	}
	/*IMPLEMENTA��O DA INTERFACE*/
	
	public void setLogado(String cpf){
		this.cpfLogado = cpf;
	}
	
	public String getLogado(){
		return cpfLogado;
	}
	
	@Override
	public void cadastrar(Funcionario funcionario) {
		this.funcionario.cadastrar(funcionario);
	}

	@Override
	public void excluir(String cpf) {
		this.funcionario.excluir(cpf);
	}

	@Override
	public Funcionario buscar(String cpf) {
		return (this.funcionario.buscar(cpf));
	}

	@Override
	public Funcionario atualizar(String cpf) {
		return (this.funcionario.atualizar(cpf));
	}

	@Override
	public boolean verificaCPF(String cpf) {
		return(this.funcionario.verificaCPF(cpf));
	}
	
	@Override
	public Funcionario login(String cpf){
		return(this.funcionario.login(cpf));
	}
}
